/**
 * @author tmh
 * @date 2024/9/13 21:16
 * @description
 */
public class T55跳跃游戏 {
    /**
     * 主要是看覆盖范围
     *
     * @param nums
     * @return
     */
    public boolean canJump(int[] nums) {
        //定义一个最大跳跃长度,一开始还没有跳，所以最大长度是0
        int maxJump = 0;
        for (int i = 0; i < nums.length; i++) {
            //条件判断，看看能不能跳到这里，然后再看从这里跳的距离是否比之前的maxJump大，大的话就更新
            if (maxJump >= i && i + nums[i] > maxJump) {
                maxJump = i + nums[i];
            }
        }
        //最后看能不能覆盖到最后一个元素的位置
        return maxJump >= nums.length-1;
    }
}
